#ifndef __GPS_H
#define __GPS_H

#include "stdlib.h"

//UTC时间信息
typedef struct  
{										    
	uint8_t hour; 	//小时
	uint8_t min; 	//分钟
	uint8_t sec; 	//秒钟
}__attribute__ ((packed)) nmea_utc_time;	//3字节 

typedef struct
{
	uint8_t sign;	//0为正，1为负
	uint16_t value;
}__attribute__ ((packed)) s_16;			//3字节


//NMEA 0183 协议解析后数据存放结构体
typedef struct  
{										    
	nmea_utc_time utc;			//UTC时间
	uint32_t latitude;				//纬度 分扩大100000倍,实际要除以100000
	uint8_t nshemi;					//北纬/南纬,N:北纬;S:南纬				  
	uint32_t longitude;			    //经度 分扩大100000倍,实际要除以100000
	uint8_t ewhemi;					//东经/西经,E:东经;W:西经
	uint8_t gpssta;					//GPS状态:0,未定位;1,非差分定位;2,差分定位;6,正在估算?				  
 	uint8_t posslnum;				//用于定位的GPS卫星数,0~12.
	uint16_t hdop;					//水平精度因子,放大了10倍,0~500,对应实际值0~50.0
	s_16 altitude;			 	//海拔高度,放大了10倍,实际除以10.单位:0.1m(如何通过UART/NRF24L01传输整型数据)	 	 
}__attribute__ ((packed)) NMEA_MSG;						//20字节

#endif
